// starting begin disable ( 101 ) ;
   0: LD_INT 101
   2: DISABLE_MARKED
// disable ( 102 ) ;
   3: LD_INT 102
   5: DISABLE_MARKED
// disable ( 103 ) ;
   6: LD_INT 103
   8: DISABLE_MARKED
// PrepareRussian ;
   9: CALL 450 0 0
// PrepareHero1 ;
  13: CALL 1934 0 0
// wsparcie1 ;
  17: CALL 2059 0 0
// DEFNOW ;
  21: CALL 4903 0 0
// InGameOn ;
  25: CALL_OW 8
// center = 1 ;
  29: LD_ADDR_EXP 20
  33: PUSH
  34: LD_INT 1
  36: ST_TO_ADDR
// wait ( 0 0$01 ) ;
  37: LD_INT 35
  39: PPUSH
  40: CALL_OW 67
// ComHold ( Nefarem ) ;
  44: LD_EXP 9
  48: PPUSH
  49: CALL_OW 140
// AddComMoveToArea ( OWChyba , GODKA ) ;
  53: LD_EXP 7
  57: PPUSH
  58: LD_INT 4
  60: PPUSH
  61: CALL_OW 173
// end ;
  65: END
// every 0 0$1 trigger IsInArea ( OWChyba , GODKA ) do
  66: LD_EXP 7
  70: PPUSH
  71: LD_INT 4
  73: PPUSH
  74: CALL_OW 308
  78: IFFALSE 449
  80: GO 82
  82: DISABLE
// begin ComHold ( OWChyba ) ;
  83: LD_EXP 7
  87: PPUSH
  88: CALL_OW 140
// ComHold ( Nefarem ) ;
  92: LD_EXP 9
  96: PPUSH
  97: CALL_OW 140
// ComTurnUnit ( OWChyba , Nefarem ) ;
 101: LD_EXP 7
 105: PPUSH
 106: LD_EXP 9
 110: PPUSH
 111: CALL_OW 119
// ComTurnUnit ( Nefarem , OWChyba ) ;
 115: LD_EXP 9
 119: PPUSH
 120: LD_EXP 7
 124: PPUSH
 125: CALL_OW 119
// Say ( OWCHyba , C20 ) ;
 129: LD_EXP 7
 133: PPUSH
 134: LD_STRING C20
 136: PPUSH
 137: CALL_OW 88
// Say ( Nefarem , C21 ) ;
 141: LD_EXP 9
 145: PPUSH
 146: LD_STRING C21
 148: PPUSH
 149: CALL_OW 88
// Say ( OWCHyba , C22 ) ;
 153: LD_EXP 7
 157: PPUSH
 158: LD_STRING C22
 160: PPUSH
 161: CALL_OW 88
// Say ( Nefarem , C23 ) ;
 165: LD_EXP 9
 169: PPUSH
 170: LD_STRING C23
 172: PPUSH
 173: CALL_OW 88
// Say ( OWCHyba , C24 ) ;
 177: LD_EXP 7
 181: PPUSH
 182: LD_STRING C24
 184: PPUSH
 185: CALL_OW 88
// Say ( Nefarem , C25 ) ;
 189: LD_EXP 9
 193: PPUSH
 194: LD_STRING C25
 196: PPUSH
 197: CALL_OW 88
// Say ( OWCHyba , C26 ) ;
 201: LD_EXP 7
 205: PPUSH
 206: LD_STRING C26
 208: PPUSH
 209: CALL_OW 88
// Say ( OWCHyba , C27 ) ;
 213: LD_EXP 7
 217: PPUSH
 218: LD_STRING C27
 220: PPUSH
 221: CALL_OW 88
// Say ( Nefarem , C28 ) ;
 225: LD_EXP 9
 229: PPUSH
 230: LD_STRING C28
 232: PPUSH
 233: CALL_OW 88
// Say ( OWCHyba , C29 ) ;
 237: LD_EXP 7
 241: PPUSH
 242: LD_STRING C29
 244: PPUSH
 245: CALL_OW 88
// Say ( Nefarem , C30 ) ;
 249: LD_EXP 9
 253: PPUSH
 254: LD_STRING C30
 256: PPUSH
 257: CALL_OW 88
// InGameOff ;
 261: CALL_OW 9
// ChangeMissionObjectives ( M1 ) ;
 265: LD_STRING M1
 267: PPUSH
 268: CALL_OW 337
// SaveForQuickRestart ;
 272: CALL_OW 22
// center = 0 ;
 276: LD_ADDR_EXP 20
 280: PUSH
 281: LD_INT 0
 283: ST_TO_ADDR
// wait ( 11 11$0 ) ;
 284: LD_INT 23100
 286: PPUSH
 287: CALL_OW 67
// SayRadio ( PULK_02 , C31 ) ;
 291: LD_EXP 8
 295: PPUSH
 296: LD_STRING C31
 298: PPUSH
 299: CALL_OW 94
// czasc = true ;
 303: LD_ADDR_EXP 30
 307: PUSH
 308: LD_INT 1
 310: ST_TO_ADDR
// czas = 5 5$00 ;
 311: LD_ADDR_EXP 31
 315: PUSH
 316: LD_INT 10500
 318: ST_TO_ADDR
// SetAreaMapShow ( LEWO , 1 ) ;
 319: LD_INT 7
 321: PPUSH
 322: LD_INT 1
 324: PPUSH
 325: CALL_OW 424
// wait ( 5 5$0 ) ;
 329: LD_INT 10500
 331: PPUSH
 332: CALL_OW 67
// wsparcie2 ;
 336: CALL 2755 0 0
// czas = 5 5$00 ;
 340: LD_ADDR_EXP 31
 344: PUSH
 345: LD_INT 10500
 347: ST_TO_ADDR
// wait ( 5 5$0 ) ;
 348: LD_INT 10500
 350: PPUSH
 351: CALL_OW 67
// wsparcie3 ;
 355: CALL 3141 0 0
// czas = 5 5$00 ;
 359: LD_ADDR_EXP 31
 363: PUSH
 364: LD_INT 10500
 366: ST_TO_ADDR
// wait ( 5 5$0 ) ;
 367: LD_INT 10500
 369: PPUSH
 370: CALL_OW 67
// wsparcie4 ;
 374: CALL 3846 0 0
// czas = 5 5$00 ;
 378: LD_ADDR_EXP 31
 382: PUSH
 383: LD_INT 10500
 385: ST_TO_ADDR
// wait ( 2 2$0 ) ;
 386: LD_INT 4200
 388: PPUSH
 389: CALL_OW 67
// SayRadio ( PULK_02 , C32 ) ;
 393: LD_EXP 8
 397: PPUSH
 398: LD_STRING C32
 400: PPUSH
 401: CALL_OW 94
// savecharacters ( PULK_02 , PULK_02 ) ;
 405: LD_EXP 8
 409: PPUSH
 410: LD_STRING PULK_02
 412: PPUSH
 413: CALL_OW 38
// Savecharacters ( OWChyba , OWChyba ) ;
 417: LD_EXP 7
 421: PPUSH
 422: LD_STRING OWChyba
 424: PPUSH
 425: CALL_OW 38
// savecharacters ( Nefarem , Nefarem ) ;
 429: LD_EXP 9
 433: PPUSH
 434: LD_STRING Nefarem
 436: PPUSH
 437: CALL_OW 38
// medale ;
 441: CALL 4490 0 0
// youwin ;
 445: CALL_OW 103
// end ; end_of_file
 449: END
// export comp_engs3 , comp_engs2 , Ru6_Turret , Am4_Turret , Ru6_fabryka1 , Ru6_fabryka2 ; export function PrepareRussian ; var Ru3_turret , i , un , b , x1 , y1 , k , l , level , comp_units ; begin
 450: LD_INT 0
 452: PPUSH
 453: PPUSH
 454: PPUSH
 455: PPUSH
 456: PPUSH
 457: PPUSH
 458: PPUSH
 459: PPUSH
 460: PPUSH
 461: PPUSH
 462: PPUSH
// Am4_Turret := FilterAllUnits ( [ [ f_side , 4 ] , [ f_btype , b_bunker ] ] ) ;
 463: LD_ADDR_EXP 4
 467: PUSH
 468: LD_INT 22
 470: PUSH
 471: LD_INT 4
 473: PUSH
 474: EMPTY
 475: LIST
 476: LIST
 477: PUSH
 478: LD_INT 30
 480: PUSH
 481: LD_INT 32
 483: PUSH
 484: EMPTY
 485: LIST
 486: LIST
 487: PUSH
 488: EMPTY
 489: LIST
 490: LIST
 491: PPUSH
 492: CALL_OW 69
 496: ST_TO_ADDR
// uc_side = 4 ;
 497: LD_ADDR_OWVAR 20
 501: PUSH
 502: LD_INT 4
 504: ST_TO_ADDR
// uc_nation = 1 ;
 505: LD_ADDR_OWVAR 21
 509: PUSH
 510: LD_INT 1
 512: ST_TO_ADDR
// hc_gallery =  ;
 513: LD_ADDR_OWVAR 33
 517: PUSH
 518: LD_STRING 
 520: ST_TO_ADDR
// hc_name =  ;
 521: LD_ADDR_OWVAR 26
 525: PUSH
 526: LD_STRING 
 528: ST_TO_ADDR
// RU3_Turret := FilterUnitsInArea ( BUDYNKI , [ [ f_side , 3 ] , [ f_btype , b_bunker ] ] ) ;
 529: LD_ADDR_VAR 0 2
 533: PUSH
 534: LD_INT 1
 536: PPUSH
 537: LD_INT 22
 539: PUSH
 540: LD_INT 3
 542: PUSH
 543: EMPTY
 544: LIST
 545: LIST
 546: PUSH
 547: LD_INT 30
 549: PUSH
 550: LD_INT 32
 552: PUSH
 553: EMPTY
 554: LIST
 555: LIST
 556: PUSH
 557: EMPTY
 558: LIST
 559: LIST
 560: PPUSH
 561: CALL_OW 70
 565: ST_TO_ADDR
// uc_side = 3 ;
 566: LD_ADDR_OWVAR 20
 570: PUSH
 571: LD_INT 3
 573: ST_TO_ADDR
// uc_nation = 3 ;
 574: LD_ADDR_OWVAR 21
 578: PUSH
 579: LD_INT 3
 581: ST_TO_ADDR
// hc_gallery =  ;
 582: LD_ADDR_OWVAR 33
 586: PUSH
 587: LD_STRING 
 589: ST_TO_ADDR
// hc_name =  ;
 590: LD_ADDR_OWVAR 26
 594: PUSH
 595: LD_STRING 
 597: ST_TO_ADDR
// for i in Ru3_Turret do
 598: LD_ADDR_VAR 0 3
 602: PUSH
 603: LD_VAR 0 2
 607: PUSH
 608: FOR_IN
 609: IFFALSE 1927
// begin if IsInUnit ( i ) = 0 then
 611: LD_VAR 0 3
 615: PPUSH
 616: CALL_OW 310
 620: PUSH
 621: LD_INT 0
 623: EQUAL
 624: IFFALSE 779
// begin Level = [ 6 , 8 , 9 ] [ Difficulty ] ;
 626: LD_ADDR_VAR 0 10
 630: PUSH
 631: LD_INT 6
 633: PUSH
 634: LD_INT 8
 636: PUSH
 637: LD_INT 9
 639: PUSH
 640: EMPTY
 641: LIST
 642: LIST
 643: LIST
 644: PUSH
 645: LD_OWVAR 67
 649: ARRAY
 650: ST_TO_ADDR
// hc_attr = [ Rand ( 9 , 11 ) , Rand ( 10 , 12 ) ] ;
 651: LD_ADDR_OWVAR 29
 655: PUSH
 656: LD_INT 9
 658: PPUSH
 659: LD_INT 11
 661: PPUSH
 662: CALL_OW 12
 666: PUSH
 667: LD_INT 10
 669: PPUSH
 670: LD_INT 12
 672: PPUSH
 673: CALL_OW 12
 677: PUSH
 678: EMPTY
 679: LIST
 680: LIST
 681: ST_TO_ADDR
// hc_skills = [ Level , Rand ( 0 , 6 ) , Rand ( 5 , 8 ) , Rand ( 2 , 6 ) ] ;
 682: LD_ADDR_OWVAR 31
 686: PUSH
 687: LD_VAR 0 10
 691: PUSH
 692: LD_INT 0
 694: PPUSH
 695: LD_INT 6
 697: PPUSH
 698: CALL_OW 12
 702: PUSH
 703: LD_INT 5
 705: PPUSH
 706: LD_INT 8
 708: PPUSH
 709: CALL_OW 12
 713: PUSH
 714: LD_INT 2
 716: PPUSH
 717: LD_INT 6
 719: PPUSH
 720: CALL_OW 12
 724: PUSH
 725: EMPTY
 726: LIST
 727: LIST
 728: LIST
 729: LIST
 730: ST_TO_ADDR
// hc_sex = Rand ( sex_male , sex_female ) ;
 731: LD_ADDR_OWVAR 27
 735: PUSH
 736: LD_INT 1
 738: PPUSH
 739: LD_INT 2
 741: PPUSH
 742: CALL_OW 12
 746: ST_TO_ADDR
// hc_class = 1 ;
 747: LD_ADDR_OWVAR 28
 751: PUSH
 752: LD_INT 1
 754: ST_TO_ADDR
// un := CreateHuman ;
 755: LD_ADDR_VAR 0 4
 759: PUSH
 760: CALL_OW 44
 764: ST_TO_ADDR
// PlaceHumanInUnit ( un , i ) ;
 765: LD_VAR 0 4
 769: PPUSH
 770: LD_VAR 0 3
 774: PPUSH
 775: CALL_OW 52
// end ; for i in Am4_Turret do
 779: LD_ADDR_VAR 0 3
 783: PUSH
 784: LD_EXP 4
 788: PUSH
 789: FOR_IN
 790: IFFALSE 1923
// begin if IsInUnit ( i ) = 0 then
 792: LD_VAR 0 3
 796: PPUSH
 797: CALL_OW 310
 801: PUSH
 802: LD_INT 0
 804: EQUAL
 805: IFFALSE 941
// begin hc_attr = [ Rand ( 9 , 11 ) , Rand ( 10 , 12 ) ] ;
 807: LD_ADDR_OWVAR 29
 811: PUSH
 812: LD_INT 9
 814: PPUSH
 815: LD_INT 11
 817: PPUSH
 818: CALL_OW 12
 822: PUSH
 823: LD_INT 10
 825: PPUSH
 826: LD_INT 12
 828: PPUSH
 829: CALL_OW 12
 833: PUSH
 834: EMPTY
 835: LIST
 836: LIST
 837: ST_TO_ADDR
// hc_skills = [ Rand ( 4 , 7 ) , Rand ( 0 , 2 ) , Rand ( 3 , 5 ) , Rand ( 2 , 6 ) ] ;
 838: LD_ADDR_OWVAR 31
 842: PUSH
 843: LD_INT 4
 845: PPUSH
 846: LD_INT 7
 848: PPUSH
 849: CALL_OW 12
 853: PUSH
 854: LD_INT 0
 856: PPUSH
 857: LD_INT 2
 859: PPUSH
 860: CALL_OW 12
 864: PUSH
 865: LD_INT 3
 867: PPUSH
 868: LD_INT 5
 870: PPUSH
 871: CALL_OW 12
 875: PUSH
 876: LD_INT 2
 878: PPUSH
 879: LD_INT 6
 881: PPUSH
 882: CALL_OW 12
 886: PUSH
 887: EMPTY
 888: LIST
 889: LIST
 890: LIST
 891: LIST
 892: ST_TO_ADDR
// hc_sex = Rand ( sex_male , sex_female ) ;
 893: LD_ADDR_OWVAR 27
 897: PUSH
 898: LD_INT 1
 900: PPUSH
 901: LD_INT 2
 903: PPUSH
 904: CALL_OW 12
 908: ST_TO_ADDR
// hc_class = 1 ;
 909: LD_ADDR_OWVAR 28
 913: PUSH
 914: LD_INT 1
 916: ST_TO_ADDR
// un := CreateHuman ;
 917: LD_ADDR_VAR 0 4
 921: PUSH
 922: CALL_OW 44
 926: ST_TO_ADDR
// PlaceHumanInUnit ( un , i ) ;
 927: LD_VAR 0 4
 931: PPUSH
 932: LD_VAR 0 3
 936: PPUSH
 937: CALL_OW 52
// end ; for i in fabryka2 do
 941: LD_ADDR_VAR 0 3
 945: PUSH
 946: LD_INT 209
 948: PUSH
 949: FOR_IN
 950: IFFALSE 1184
// begin l = 0 ;
 952: LD_ADDR_VAR 0 9
 956: PUSH
 957: LD_INT 0
 959: ST_TO_ADDR
// if IsInUnit ( i ) = 0 then
 960: LD_VAR 0 3
 964: PPUSH
 965: CALL_OW 310
 969: PUSH
 970: LD_INT 0
 972: EQUAL
 973: IFFALSE 1182
// begin Level = [ 5 , 6 , 7 ] [ Difficulty ] ;
 975: LD_ADDR_VAR 0 10
 979: PUSH
 980: LD_INT 5
 982: PUSH
 983: LD_INT 6
 985: PUSH
 986: LD_INT 7
 988: PUSH
 989: EMPTY
 990: LIST
 991: LIST
 992: LIST
 993: PUSH
 994: LD_OWVAR 67
 998: ARRAY
 999: ST_TO_ADDR
// repeat begin uc_side = 3 ;
1000: LD_ADDR_OWVAR 20
1004: PUSH
1005: LD_INT 3
1007: ST_TO_ADDR
// uc_nation = 3 ;
1008: LD_ADDR_OWVAR 21
1012: PUSH
1013: LD_INT 3
1015: ST_TO_ADDR
// hc_gallery =  ;
1016: LD_ADDR_OWVAR 33
1020: PUSH
1021: LD_STRING 
1023: ST_TO_ADDR
// hc_name =  ;
1024: LD_ADDR_OWVAR 26
1028: PUSH
1029: LD_STRING 
1031: ST_TO_ADDR
// hc_attr = [ Rand ( 9 , 11 ) , Rand ( 10 , 12 ) ] ;
1032: LD_ADDR_OWVAR 29
1036: PUSH
1037: LD_INT 9
1039: PPUSH
1040: LD_INT 11
1042: PPUSH
1043: CALL_OW 12
1047: PUSH
1048: LD_INT 10
1050: PPUSH
1051: LD_INT 12
1053: PPUSH
1054: CALL_OW 12
1058: PUSH
1059: EMPTY
1060: LIST
1061: LIST
1062: ST_TO_ADDR
// hc_skills = [ Rand ( 0 , 3 ) , Rand ( 0 , 1 ) , Level , Rand ( 0 , 1 ) ] ;
1063: LD_ADDR_OWVAR 31
1067: PUSH
1068: LD_INT 0
1070: PPUSH
1071: LD_INT 3
1073: PPUSH
1074: CALL_OW 12
1078: PUSH
1079: LD_INT 0
1081: PPUSH
1082: LD_INT 1
1084: PPUSH
1085: CALL_OW 12
1089: PUSH
1090: LD_VAR 0 10
1094: PUSH
1095: LD_INT 0
1097: PPUSH
1098: LD_INT 1
1100: PPUSH
1101: CALL_OW 12
1105: PUSH
1106: EMPTY
1107: LIST
1108: LIST
1109: LIST
1110: LIST
1111: ST_TO_ADDR
// hc_sex = Rand ( sex_male , sex_female ) ;
1112: LD_ADDR_OWVAR 27
1116: PUSH
1117: LD_INT 1
1119: PPUSH
1120: LD_INT 2
1122: PPUSH
1123: CALL_OW 12
1127: ST_TO_ADDR
// hc_class = 3 ;
1128: LD_ADDR_OWVAR 28
1132: PUSH
1133: LD_INT 3
1135: ST_TO_ADDR
// un = CreateHuman ;
1136: LD_ADDR_VAR 0 4
1140: PUSH
1141: CALL_OW 44
1145: ST_TO_ADDR
// PlaceHumanInUnit ( un , fabryka2 ) ;
1146: LD_VAR 0 4
1150: PPUSH
1151: LD_INT 209
1153: PPUSH
1154: CALL_OW 52
// l = l + 1 ;
1158: LD_ADDR_VAR 0 9
1162: PUSH
1163: LD_VAR 0 9
1167: PUSH
1168: LD_INT 1
1170: PLUS
1171: ST_TO_ADDR
// end until l = 3 ;
1172: LD_VAR 0 9
1176: PUSH
1177: LD_INT 3
1179: EQUAL
1180: IFFALSE 1000
// end ; end ;
1182: GO 949
1184: POP
1185: POP
// for i in fabryka1 do
1186: LD_ADDR_VAR 0 3
1190: PUSH
1191: LD_INT 210
1193: PUSH
1194: FOR_IN
1195: IFFALSE 1429
// begin l = 0 ;
1197: LD_ADDR_VAR 0 9
1201: PUSH
1202: LD_INT 0
1204: ST_TO_ADDR
// if IsInUnit ( i ) = 0 then
1205: LD_VAR 0 3
1209: PPUSH
1210: CALL_OW 310
1214: PUSH
1215: LD_INT 0
1217: EQUAL
1218: IFFALSE 1427
// begin Level = [ 5 , 6 , 7 ] [ Difficulty ] ;
1220: LD_ADDR_VAR 0 10
1224: PUSH
1225: LD_INT 5
1227: PUSH
1228: LD_INT 6
1230: PUSH
1231: LD_INT 7
1233: PUSH
1234: EMPTY
1235: LIST
1236: LIST
1237: LIST
1238: PUSH
1239: LD_OWVAR 67
1243: ARRAY
1244: ST_TO_ADDR
// repeat begin uc_side = 3 ;
1245: LD_ADDR_OWVAR 20
1249: PUSH
1250: LD_INT 3
1252: ST_TO_ADDR
// uc_nation = 3 ;
1253: LD_ADDR_OWVAR 21
1257: PUSH
1258: LD_INT 3
1260: ST_TO_ADDR
// hc_gallery =  ;
1261: LD_ADDR_OWVAR 33
1265: PUSH
1266: LD_STRING 
1268: ST_TO_ADDR
// hc_name =  ;
1269: LD_ADDR_OWVAR 26
1273: PUSH
1274: LD_STRING 
1276: ST_TO_ADDR
// hc_attr = [ Rand ( 9 , 11 ) , Rand ( 10 , 12 ) ] ;
1277: LD_ADDR_OWVAR 29
1281: PUSH
1282: LD_INT 9
1284: PPUSH
1285: LD_INT 11
1287: PPUSH
1288: CALL_OW 12
1292: PUSH
1293: LD_INT 10
1295: PPUSH
1296: LD_INT 12
1298: PPUSH
1299: CALL_OW 12
1303: PUSH
1304: EMPTY
1305: LIST
1306: LIST
1307: ST_TO_ADDR
// hc_skills = [ Rand ( 0 , 3 ) , Rand ( 0 , 1 ) , Level , Rand ( 0 , 1 ) ] ;
1308: LD_ADDR_OWVAR 31
1312: PUSH
1313: LD_INT 0
1315: PPUSH
1316: LD_INT 3
1318: PPUSH
1319: CALL_OW 12
1323: PUSH
1324: LD_INT 0
1326: PPUSH
1327: LD_INT 1
1329: PPUSH
1330: CALL_OW 12
1334: PUSH
1335: LD_VAR 0 10
1339: PUSH
1340: LD_INT 0
1342: PPUSH
1343: LD_INT 1
1345: PPUSH
1346: CALL_OW 12
1350: PUSH
1351: EMPTY
1352: LIST
1353: LIST
1354: LIST
1355: LIST
1356: ST_TO_ADDR
// hc_sex = Rand ( sex_male , sex_female ) ;
1357: LD_ADDR_OWVAR 27
1361: PUSH
1362: LD_INT 1
1364: PPUSH
1365: LD_INT 2
1367: PPUSH
1368: CALL_OW 12
1372: ST_TO_ADDR
// hc_class = 3 ;
1373: LD_ADDR_OWVAR 28
1377: PUSH
1378: LD_INT 3
1380: ST_TO_ADDR
// un = CreateHuman ;
1381: LD_ADDR_VAR 0 4
1385: PUSH
1386: CALL_OW 44
1390: ST_TO_ADDR
// PlaceHumanInUnit ( un , fabryka1 ) ;
1391: LD_VAR 0 4
1395: PPUSH
1396: LD_INT 210
1398: PPUSH
1399: CALL_OW 52
// l = l + 1 ;
1403: LD_ADDR_VAR 0 9
1407: PUSH
1408: LD_VAR 0 9
1412: PUSH
1413: LD_INT 1
1415: PLUS
1416: ST_TO_ADDR
// end until l = 4 ;
1417: LD_VAR 0 9
1421: PUSH
1422: LD_INT 4
1424: EQUAL
1425: IFFALSE 1245
// end ; end ;
1427: GO 1194
1429: POP
1430: POP
// for i in kosze1 do
1431: LD_ADDR_VAR 0 3
1435: PUSH
1436: LD_INT 296
1438: PUSH
1439: FOR_IN
1440: IFFALSE 1674
// begin l = 0 ;
1442: LD_ADDR_VAR 0 9
1446: PUSH
1447: LD_INT 0
1449: ST_TO_ADDR
// if IsInUnit ( i ) = 0 then
1450: LD_VAR 0 3
1454: PPUSH
1455: CALL_OW 310
1459: PUSH
1460: LD_INT 0
1462: EQUAL
1463: IFFALSE 1672
// begin Level = [ 7 , 8 , 9 ] [ Difficulty ] ;
1465: LD_ADDR_VAR 0 10
1469: PUSH
1470: LD_INT 7
1472: PUSH
1473: LD_INT 8
1475: PUSH
1476: LD_INT 9
1478: PUSH
1479: EMPTY
1480: LIST
1481: LIST
1482: LIST
1483: PUSH
1484: LD_OWVAR 67
1488: ARRAY
1489: ST_TO_ADDR
// repeat begin uc_side = 3 ;
1490: LD_ADDR_OWVAR 20
1494: PUSH
1495: LD_INT 3
1497: ST_TO_ADDR
// uc_nation = 3 ;
1498: LD_ADDR_OWVAR 21
1502: PUSH
1503: LD_INT 3
1505: ST_TO_ADDR
// hc_gallery =  ;
1506: LD_ADDR_OWVAR 33
1510: PUSH
1511: LD_STRING 
1513: ST_TO_ADDR
// hc_name =  ;
1514: LD_ADDR_OWVAR 26
1518: PUSH
1519: LD_STRING 
1521: ST_TO_ADDR
// hc_attr = [ Rand ( 9 , 11 ) , Rand ( 10 , 12 ) ] ;
1522: LD_ADDR_OWVAR 29
1526: PUSH
1527: LD_INT 9
1529: PPUSH
1530: LD_INT 11
1532: PPUSH
1533: CALL_OW 12
1537: PUSH
1538: LD_INT 10
1540: PPUSH
1541: LD_INT 12
1543: PPUSH
1544: CALL_OW 12
1548: PUSH
1549: EMPTY
1550: LIST
1551: LIST
1552: ST_TO_ADDR
// hc_skills = [ Level , Rand ( 0 , 1 ) , Rand ( 0 , 5 ) , Rand ( 0 , 1 ) ] ;
1553: LD_ADDR_OWVAR 31
1557: PUSH
1558: LD_VAR 0 10
1562: PUSH
1563: LD_INT 0
1565: PPUSH
1566: LD_INT 1
1568: PPUSH
1569: CALL_OW 12
1573: PUSH
1574: LD_INT 0
1576: PPUSH
1577: LD_INT 5
1579: PPUSH
1580: CALL_OW 12
1584: PUSH
1585: LD_INT 0
1587: PPUSH
1588: LD_INT 1
1590: PPUSH
1591: CALL_OW 12
1595: PUSH
1596: EMPTY
1597: LIST
1598: LIST
1599: LIST
1600: LIST
1601: ST_TO_ADDR
// hc_sex = Rand ( sex_male , sex_female ) ;
1602: LD_ADDR_OWVAR 27
1606: PUSH
1607: LD_INT 1
1609: PPUSH
1610: LD_INT 2
1612: PPUSH
1613: CALL_OW 12
1617: ST_TO_ADDR
// hc_class = 1 ;
1618: LD_ADDR_OWVAR 28
1622: PUSH
1623: LD_INT 1
1625: ST_TO_ADDR
// un = CreateHuman ;
1626: LD_ADDR_VAR 0 4
1630: PUSH
1631: CALL_OW 44
1635: ST_TO_ADDR
// PlaceHumanInUnit ( un , kosze1 ) ;
1636: LD_VAR 0 4
1640: PPUSH
1641: LD_INT 296
1643: PPUSH
1644: CALL_OW 52
// l = l + 1 ;
1648: LD_ADDR_VAR 0 9
1652: PUSH
1653: LD_VAR 0 9
1657: PUSH
1658: LD_INT 1
1660: PLUS
1661: ST_TO_ADDR
// end until l = 3 ;
1662: LD_VAR 0 9
1666: PUSH
1667: LD_INT 3
1669: EQUAL
1670: IFFALSE 1490
// end ; end ;
1672: GO 1439
1674: POP
1675: POP
// for i in kosze2 do
1676: LD_ADDR_VAR 0 3
1680: PUSH
1681: LD_INT 302
1683: PUSH
1684: FOR_IN
1685: IFFALSE 1919
// begin l = 0 ;
1687: LD_ADDR_VAR 0 9
1691: PUSH
1692: LD_INT 0
1694: ST_TO_ADDR
// if IsInUnit ( i ) = 0 then
1695: LD_VAR 0 3
1699: PPUSH
1700: CALL_OW 310
1704: PUSH
1705: LD_INT 0
1707: EQUAL
1708: IFFALSE 1917
// begin Level = [ 7 , 8 , 9 ] [ Difficulty ] ;
1710: LD_ADDR_VAR 0 10
1714: PUSH
1715: LD_INT 7
1717: PUSH
1718: LD_INT 8
1720: PUSH
1721: LD_INT 9
1723: PUSH
1724: EMPTY
1725: LIST
1726: LIST
1727: LIST
1728: PUSH
1729: LD_OWVAR 67
1733: ARRAY
1734: ST_TO_ADDR
// repeat begin uc_side = 3 ;
1735: LD_ADDR_OWVAR 20
1739: PUSH
1740: LD_INT 3
1742: ST_TO_ADDR
// uc_nation = 3 ;
1743: LD_ADDR_OWVAR 21
1747: PUSH
1748: LD_INT 3
1750: ST_TO_ADDR
// hc_gallery =  ;
1751: LD_ADDR_OWVAR 33
1755: PUSH
1756: LD_STRING 
1758: ST_TO_ADDR
// hc_name =  ;
1759: LD_ADDR_OWVAR 26
1763: PUSH
1764: LD_STRING 
1766: ST_TO_ADDR
// hc_attr = [ Rand ( 9 , 11 ) , Rand ( 10 , 12 ) ] ;
1767: LD_ADDR_OWVAR 29
1771: PUSH
1772: LD_INT 9
1774: PPUSH
1775: LD_INT 11
1777: PPUSH
1778: CALL_OW 12
1782: PUSH
1783: LD_INT 10
1785: PPUSH
1786: LD_INT 12
1788: PPUSH
1789: CALL_OW 12
1793: PUSH
1794: EMPTY
1795: LIST
1796: LIST
1797: ST_TO_ADDR
// hc_skills = [ Level , Rand ( 0 , 1 ) , Rand ( 0 , 5 ) , Rand ( 0 , 1 ) ] ;
1798: LD_ADDR_OWVAR 31
1802: PUSH
1803: LD_VAR 0 10
1807: PUSH
1808: LD_INT 0
1810: PPUSH
1811: LD_INT 1
1813: PPUSH
1814: CALL_OW 12
1818: PUSH
1819: LD_INT 0
1821: PPUSH
1822: LD_INT 5
1824: PPUSH
1825: CALL_OW 12
1829: PUSH
1830: LD_INT 0
1832: PPUSH
1833: LD_INT 1
1835: PPUSH
1836: CALL_OW 12
1840: PUSH
1841: EMPTY
1842: LIST
1843: LIST
1844: LIST
1845: LIST
1846: ST_TO_ADDR
// hc_sex = Rand ( sex_male , sex_female ) ;
1847: LD_ADDR_OWVAR 27
1851: PUSH
1852: LD_INT 1
1854: PPUSH
1855: LD_INT 2
1857: PPUSH
1858: CALL_OW 12
1862: ST_TO_ADDR
// hc_class = 1 ;
1863: LD_ADDR_OWVAR 28
1867: PUSH
1868: LD_INT 1
1870: ST_TO_ADDR
// un = CreateHuman ;
1871: LD_ADDR_VAR 0 4
1875: PUSH
1876: CALL_OW 44
1880: ST_TO_ADDR
// PlaceHumanInUnit ( un , kosze2 ) ;
1881: LD_VAR 0 4
1885: PPUSH
1886: LD_INT 302
1888: PPUSH
1889: CALL_OW 52
// l = l + 1 ;
1893: LD_ADDR_VAR 0 9
1897: PUSH
1898: LD_VAR 0 9
1902: PUSH
1903: LD_INT 1
1905: PLUS
1906: ST_TO_ADDR
// end until l = 3 ;
1907: LD_VAR 0 9
1911: PUSH
1912: LD_INT 3
1914: EQUAL
1915: IFFALSE 1735
// end ; end ;
1917: GO 1684
1919: POP
1920: POP
// end ;
1921: GO 789
1923: POP
1924: POP
// end ;
1925: GO 608
1927: POP
1928: POP
// end ; end_of_file
1929: LD_VAR 0 1
1933: RET
// export OWChyba , PULK_02 , Nefarem ; export function PrepareHero1 ; begin
1934: LD_INT 0
1936: PPUSH
// uc_side = 4 ;
1937: LD_ADDR_OWVAR 20
1941: PUSH
1942: LD_INT 4
1944: ST_TO_ADDR
// uc_nation = 1 ;
1945: LD_ADDR_OWVAR 21
1949: PUSH
1950: LD_INT 1
1952: ST_TO_ADDR
// OWCHyba := CreateCharacter ( OWChyba ) ;
1953: LD_ADDR_EXP 7
1957: PUSH
1958: LD_STRING OWChyba
1960: PPUSH
1961: CALL_OW 34
1965: ST_TO_ADDR
// PlaceUnitArea ( OWChyba , wsparcie , false ) ;
1966: LD_EXP 7
1970: PPUSH
1971: LD_INT 3
1973: PPUSH
1974: LD_INT 0
1976: PPUSH
1977: CALL_OW 49
// uc_side = 4 ;
1981: LD_ADDR_OWVAR 20
1985: PUSH
1986: LD_INT 4
1988: ST_TO_ADDR
// uc_nation = 1 ;
1989: LD_ADDR_OWVAR 21
1993: PUSH
1994: LD_INT 1
1996: ST_TO_ADDR
// PULK_02 := CreateCharacter ( PULK_02 ) ;
1997: LD_ADDR_EXP 8
2001: PUSH
2002: LD_STRING PULK_02
2004: PPUSH
2005: CALL_OW 34
2009: ST_TO_ADDR
// uc_side = 4 ;
2010: LD_ADDR_OWVAR 20
2014: PUSH
2015: LD_INT 4
2017: ST_TO_ADDR
// uc_nation = 1 ;
2018: LD_ADDR_OWVAR 21
2022: PUSH
2023: LD_INT 1
2025: ST_TO_ADDR
// Nefarem := CreateCharacter ( Nefarem ) ;
2026: LD_ADDR_EXP 9
2030: PUSH
2031: LD_STRING Nefarem
2033: PPUSH
2034: CALL_OW 34
2038: ST_TO_ADDR
// PlaceUnitArea ( Nefarem , NEFAREM1 , false ) ;
2039: LD_EXP 9
2043: PPUSH
2044: LD_INT 2
2046: PPUSH
2047: LD_INT 0
2049: PPUSH
2050: CALL_OW 49
// end ; end_of_file
2054: LD_VAR 0 1
2058: RET
// export W1 , W2 , W3 , W4 , W8 , W11 , W10 , W9 , S1 , S2 ; export function wsparcie1 ; begin
2059: LD_INT 0
2061: PPUSH
// ; vc_chassis = 3 ;
2062: LD_ADDR_OWVAR 37
2066: PUSH
2067: LD_INT 3
2069: ST_TO_ADDR
// vc_engine = engine_combustion ;
2070: LD_ADDR_OWVAR 39
2074: PUSH
2075: LD_INT 1
2077: ST_TO_ADDR
// vc_control = control_manual ;
2078: LD_ADDR_OWVAR 38
2082: PUSH
2083: LD_INT 1
2085: ST_TO_ADDR
// vc_weapon = 12 ;
2086: LD_ADDR_OWVAR 40
2090: PUSH
2091: LD_INT 12
2093: ST_TO_ADDR
// W8 = CreateVehicle ;
2094: LD_ADDR_EXP 14
2098: PUSH
2099: CALL_OW 45
2103: ST_TO_ADDR
// W11 = CreateVehicle ;
2104: LD_ADDR_EXP 15
2108: PUSH
2109: CALL_OW 45
2113: ST_TO_ADDR
// W1 = CreateVehicle ;
2114: LD_ADDR_EXP 10
2118: PUSH
2119: CALL_OW 45
2123: ST_TO_ADDR
// W2 = CreateVehicle ;
2124: LD_ADDR_EXP 11
2128: PUSH
2129: CALL_OW 45
2133: ST_TO_ADDR
// hc_class = 3 ;
2134: LD_ADDR_OWVAR 28
2138: PUSH
2139: LD_INT 3
2141: ST_TO_ADDR
// hc_name =  ;
2142: LD_ADDR_OWVAR 26
2146: PUSH
2147: LD_STRING 
2149: ST_TO_ADDR
// uc_side = 4 ;
2150: LD_ADDR_OWVAR 20
2154: PUSH
2155: LD_INT 4
2157: ST_TO_ADDR
// uc_nation = 1 ;
2158: LD_ADDR_OWVAR 21
2162: PUSH
2163: LD_INT 1
2165: ST_TO_ADDR
// hc_gallery =  ;
2166: LD_ADDR_OWVAR 33
2170: PUSH
2171: LD_STRING 
2173: ST_TO_ADDR
// hc_sex = sex_male ;
2174: LD_ADDR_OWVAR 27
2178: PUSH
2179: LD_INT 1
2181: ST_TO_ADDR
// hc_skills = [ Rand ( 0 , 1 ) , Rand ( 2 , 3 ) , Rand ( 4 , 6 ) , Rand ( 0 , 1 ) ] ;
2182: LD_ADDR_OWVAR 31
2186: PUSH
2187: LD_INT 0
2189: PPUSH
2190: LD_INT 1
2192: PPUSH
2193: CALL_OW 12
2197: PUSH
2198: LD_INT 2
2200: PPUSH
2201: LD_INT 3
2203: PPUSH
2204: CALL_OW 12
2208: PUSH
2209: LD_INT 4
2211: PPUSH
2212: LD_INT 6
2214: PPUSH
2215: CALL_OW 12
2219: PUSH
2220: LD_INT 0
2222: PPUSH
2223: LD_INT 1
2225: PPUSH
2226: CALL_OW 12
2230: PUSH
2231: EMPTY
2232: LIST
2233: LIST
2234: LIST
2235: LIST
2236: ST_TO_ADDR
// W9 = CreateHuman ;
2237: LD_ADDR_EXP 17
2241: PUSH
2242: CALL_OW 44
2246: ST_TO_ADDR
// W10 = CreateHuman ;
2247: LD_ADDR_EXP 16
2251: PUSH
2252: CALL_OW 44
2256: ST_TO_ADDR
// W3 = CreateHuman ;
2257: LD_ADDR_EXP 12
2261: PUSH
2262: CALL_OW 44
2266: ST_TO_ADDR
// W4 = CreateHuman ;
2267: LD_ADDR_EXP 13
2271: PUSH
2272: CALL_OW 44
2276: ST_TO_ADDR
// PlaceHumanInUnit ( W9 , W8 ) ;
2277: LD_EXP 17
2281: PPUSH
2282: LD_EXP 14
2286: PPUSH
2287: CALL_OW 52
// PlaceHumanInUnit ( W10 , W11 ) ;
2291: LD_EXP 16
2295: PPUSH
2296: LD_EXP 15
2300: PPUSH
2301: CALL_OW 52
// PlaceHumanInUnit ( W3 , W1 ) ;
2305: LD_EXP 12
2309: PPUSH
2310: LD_EXP 10
2314: PPUSH
2315: CALL_OW 52
// PlaceHumanInUnit ( W4 , W2 ) ;
2319: LD_EXP 13
2323: PPUSH
2324: LD_EXP 11
2328: PPUSH
2329: CALL_OW 52
// Setcargo ( W8 , mat_cans , 100 ) ;
2333: LD_EXP 14
2337: PPUSH
2338: LD_INT 1
2340: PPUSH
2341: LD_INT 100
2343: PPUSH
2344: CALL_OW 290
// setcargo ( W11 , mat_cans , 100 ) ;
2348: LD_EXP 15
2352: PPUSH
2353: LD_INT 1
2355: PPUSH
2356: LD_INT 100
2358: PPUSH
2359: CALL_OW 290
// Setcargo ( W1 , mat_cans , 100 ) ;
2363: LD_EXP 10
2367: PPUSH
2368: LD_INT 1
2370: PPUSH
2371: LD_INT 100
2373: PPUSH
2374: CALL_OW 290
// setcargo ( W2 , mat_cans , 100 ) ;
2378: LD_EXP 11
2382: PPUSH
2383: LD_INT 1
2385: PPUSH
2386: LD_INT 100
2388: PPUSH
2389: CALL_OW 290
// PlaceUnitArea ( W8 , WSPARCIE , false ) ;
2393: LD_EXP 14
2397: PPUSH
2398: LD_INT 3
2400: PPUSH
2401: LD_INT 0
2403: PPUSH
2404: CALL_OW 49
// PlaceUnitArea ( W11 , WSPARCIE , false ) ;
2408: LD_EXP 15
2412: PPUSH
2413: LD_INT 3
2415: PPUSH
2416: LD_INT 0
2418: PPUSH
2419: CALL_OW 49
// PlaceUnitArea ( W1 , WSPARCIE , false ) ;
2423: LD_EXP 10
2427: PPUSH
2428: LD_INT 3
2430: PPUSH
2431: LD_INT 0
2433: PPUSH
2434: CALL_OW 49
// PlaceUnitArea ( W2 , WSPARCIE , false ) ;
2438: LD_EXP 11
2442: PPUSH
2443: LD_INT 3
2445: PPUSH
2446: LD_INT 0
2448: PPUSH
2449: CALL_OW 49
// hc_class = 1 ;
2453: LD_ADDR_OWVAR 28
2457: PUSH
2458: LD_INT 1
2460: ST_TO_ADDR
// hc_name =  ;
2461: LD_ADDR_OWVAR 26
2465: PUSH
2466: LD_STRING 
2468: ST_TO_ADDR
// uc_side = 4 ;
2469: LD_ADDR_OWVAR 20
2473: PUSH
2474: LD_INT 4
2476: ST_TO_ADDR
// uc_nation = 1 ;
2477: LD_ADDR_OWVAR 21
2481: PUSH
2482: LD_INT 1
2484: ST_TO_ADDR
// hc_gallery =  ;
2485: LD_ADDR_OWVAR 33
2489: PUSH
2490: LD_STRING 
2492: ST_TO_ADDR
// hc_sex = sex_male ;
2493: LD_ADDR_OWVAR 27
2497: PUSH
2498: LD_INT 1
2500: ST_TO_ADDR
// hc_skills = [ Rand ( 4 , 6 ) , Rand ( 1 , 3 ) , Rand ( 1 , 2 ) , Rand ( 1 , 2 ) ] ;
2501: LD_ADDR_OWVAR 31
2505: PUSH
2506: LD_INT 4
2508: PPUSH
2509: LD_INT 6
2511: PPUSH
2512: CALL_OW 12
2516: PUSH
2517: LD_INT 1
2519: PPUSH
2520: LD_INT 3
2522: PPUSH
2523: CALL_OW 12
2527: PUSH
2528: LD_INT 1
2530: PPUSH
2531: LD_INT 2
2533: PPUSH
2534: CALL_OW 12
2538: PUSH
2539: LD_INT 1
2541: PPUSH
2542: LD_INT 2
2544: PPUSH
2545: CALL_OW 12
2549: PUSH
2550: EMPTY
2551: LIST
2552: LIST
2553: LIST
2554: LIST
2555: ST_TO_ADDR
// S2 = CreateHuman ;
2556: LD_ADDR_EXP 19
2560: PUSH
2561: CALL_OW 44
2565: ST_TO_ADDR
// S1 = CreateHuman ;
2566: LD_ADDR_EXP 18
2570: PUSH
2571: CALL_OW 44
2575: ST_TO_ADDR
// PlaceUnitArea ( S1 , WSPARCIE , false ) ;
2576: LD_EXP 18
2580: PPUSH
2581: LD_INT 3
2583: PPUSH
2584: LD_INT 0
2586: PPUSH
2587: CALL_OW 49
// PlaceUnitArea ( S2 , WSPARCIE , false ) ;
2591: LD_EXP 19
2595: PPUSH
2596: LD_INT 3
2598: PPUSH
2599: LD_INT 0
2601: PPUSH
2602: CALL_OW 49
// end ; end_of_file
2606: LD_VAR 0 1
2610: RET
// every 0 0$1 trigger IsDead ( OWChyba ) do
2611: LD_EXP 7
2615: PPUSH
2616: CALL_OW 301
2620: IFFALSE 2632
2622: GO 2624
2624: DISABLE
// begin YouLost ( ded ) ;
2625: LD_STRING ded
2627: PPUSH
2628: CALL_OW 104
// end ;
2632: END
// every 0 0$1 trigger IsDead ( Nefarem ) do
2633: LD_EXP 9
2637: PPUSH
2638: CALL_OW 301
2642: IFFALSE 2654
2644: GO 2646
2646: DISABLE
// begin YouLost ( ded2 ) ;
2647: LD_STRING ded2
2649: PPUSH
2650: CALL_OW 104
// end ;
2654: END
// on Contact ( side1 , side2 ) do begin if side1 = 4 and side2 = 1 then
2655: LD_VAR 0 1
2659: PUSH
2660: LD_INT 4
2662: EQUAL
2663: PUSH
2664: LD_VAR 0 2
2668: PUSH
2669: LD_INT 1
2671: EQUAL
2672: AND
2673: IFFALSE 2682
// begin YouLost ( fire ) ;
2675: LD_STRING fire
2677: PPUSH
2678: CALL_OW 104
// end ; end ;
2682: PPOPN 2
2684: END
// on UnitDestroyed ( un ) do begin if un in FilterAllUnits ( [ [ f_Side , 1 ] , [ f_weapon , us_cargo_bay ] ] ) then
2685: LD_VAR 0 1
2689: PUSH
2690: LD_INT 22
2692: PUSH
2693: LD_INT 1
2695: PUSH
2696: EMPTY
2697: LIST
2698: LIST
2699: PUSH
2700: LD_INT 34
2702: PUSH
2703: LD_INT 12
2705: PUSH
2706: EMPTY
2707: LIST
2708: LIST
2709: PUSH
2710: EMPTY
2711: LIST
2712: LIST
2713: PPUSH
2714: CALL_OW 69
2718: IN
2719: IFFALSE 2728
// begin YouLost ( lost ) ;
2721: LD_STRING lost
2723: PPUSH
2724: CALL_OW 104
// end ; end ; end_of_file
2728: PPOPN 1
2730: END
// export center ; every 0 0$1 trigger Center = 1 do
2731: LD_EXP 20
2735: PUSH
2736: LD_INT 1
2738: EQUAL
2739: IFFALSE 2754
2741: GO 2743
2743: DISABLE
// begin ; CenterNowOnUnits ( OWChyba ) ;
2744: LD_EXP 7
2748: PPUSH
2749: CALL_OW 87
// enable ;
2753: ENABLE
// end ; end_of_file
2754: END
// export ASD1 , ASD2 , ASD3 ; export function wsparcie2 ; begin
2755: LD_INT 0
2757: PPUSH
// ; vc_chassis = 2 ;
2758: LD_ADDR_OWVAR 37
2762: PUSH
2763: LD_INT 2
2765: ST_TO_ADDR
// vc_engine = engine_combustion ;
2766: LD_ADDR_OWVAR 39
2770: PUSH
2771: LD_INT 1
2773: ST_TO_ADDR
// vc_control = control_Computer ;
2774: LD_ADDR_OWVAR 38
2778: PUSH
2779: LD_INT 3
2781: ST_TO_ADDR
// vc_weapon = 12 ;
2782: LD_ADDR_OWVAR 40
2786: PUSH
2787: LD_INT 12
2789: ST_TO_ADDR
// uc_side = 1 ;
2790: LD_ADDR_OWVAR 20
2794: PUSH
2795: LD_INT 1
2797: ST_TO_ADDR
// uc_nation = 1 ;
2798: LD_ADDR_OWVAR 21
2802: PUSH
2803: LD_INT 1
2805: ST_TO_ADDR
// ASD1 = CreateVehicle ;
2806: LD_ADDR_EXP 21
2810: PUSH
2811: CALL_OW 45
2815: ST_TO_ADDR
// ASD2 = CreateVehicle ;
2816: LD_ADDR_EXP 22
2820: PUSH
2821: CALL_OW 45
2825: ST_TO_ADDR
// ASD3 = CreateVehicle ;
2826: LD_ADDR_EXP 23
2830: PUSH
2831: CALL_OW 45
2835: ST_TO_ADDR
// setcargo ( ASD1 , mat_cans , 100 ) ;
2836: LD_EXP 21
2840: PPUSH
2841: LD_INT 1
2843: PPUSH
2844: LD_INT 100
2846: PPUSH
2847: CALL_OW 290
// setcargo ( ASD2 , mat_oil , 100 ) ;
2851: LD_EXP 22
2855: PPUSH
2856: LD_INT 2
2858: PPUSH
2859: LD_INT 100
2861: PPUSH
2862: CALL_OW 290
// setcargo ( ASD3 , mat_oil , 100 ) ;
2866: LD_EXP 23
2870: PPUSH
2871: LD_INT 2
2873: PPUSH
2874: LD_INT 100
2876: PPUSH
2877: CALL_OW 290
// PlaceUnitArea ( ASD1 , WSPARCIE , false ) ;
2881: LD_EXP 21
2885: PPUSH
2886: LD_INT 3
2888: PPUSH
2889: LD_INT 0
2891: PPUSH
2892: CALL_OW 49
// wait ( 0 0$02 ) ;
2896: LD_INT 70
2898: PPUSH
2899: CALL_OW 67
// AddComMoveToArea ( ASD1 , JAZDA ) ;
2903: LD_EXP 21
2907: PPUSH
2908: LD_INT 6
2910: PPUSH
2911: CALL_OW 173
// AddComMoveToArea ( ASD1 , WYJAZD ) ;
2915: LD_EXP 21
2919: PPUSH
2920: LD_INT 5
2922: PPUSH
2923: CALL_OW 173
// PlaceUnitArea ( ASD2 , WSPARCIE , false ) ;
2927: LD_EXP 22
2931: PPUSH
2932: LD_INT 3
2934: PPUSH
2935: LD_INT 0
2937: PPUSH
2938: CALL_OW 49
// AddComMoveToArea ( ASD2 , JAZDA ) ;
2942: LD_EXP 22
2946: PPUSH
2947: LD_INT 6
2949: PPUSH
2950: CALL_OW 173
// AddComMoveToArea ( ASD2 , WYJAZD ) ;
2954: LD_EXP 22
2958: PPUSH
2959: LD_INT 5
2961: PPUSH
2962: CALL_OW 173
// wait ( 0 0$02 ) ;
2966: LD_INT 70
2968: PPUSH
2969: CALL_OW 67
// PlaceUnitArea ( ASD3 , WSPARCIE , false ) ;
2973: LD_EXP 23
2977: PPUSH
2978: LD_INT 3
2980: PPUSH
2981: LD_INT 0
2983: PPUSH
2984: CALL_OW 49
// AddComMoveToArea ( ASD3 , JAZDA ) ;
2988: LD_EXP 23
2992: PPUSH
2993: LD_INT 6
2995: PPUSH
2996: CALL_OW 173
// AddComMoveToArea ( ASD3 , WYJAZD ) ;
3000: LD_EXP 23
3004: PPUSH
3005: LD_INT 5
3007: PPUSH
3008: CALL_OW 173
// wait ( 0 0$02 ) ;
3012: LD_INT 70
3014: PPUSH
3015: CALL_OW 67
// AddComMoveToArea ( ASD1 , JAZDA ) ;
3019: LD_EXP 21
3023: PPUSH
3024: LD_INT 6
3026: PPUSH
3027: CALL_OW 173
// AddComMoveToArea ( ASD2 , JAZDA ) ;
3031: LD_EXP 22
3035: PPUSH
3036: LD_INT 6
3038: PPUSH
3039: CALL_OW 173
// AddComMoveToArea ( ASD3 , JAZDA ) ;
3043: LD_EXP 23
3047: PPUSH
3048: LD_INT 6
3050: PPUSH
3051: CALL_OW 173
// end ;
3055: LD_VAR 0 1
3059: RET
// every 0 0$0.1 trigger IsInArea ( ASD1 , WYJAZD ) do
3060: LD_EXP 21
3064: PPUSH
3065: LD_INT 5
3067: PPUSH
3068: CALL_OW 308
3072: IFFALSE 3086
3074: GO 3076
3076: DISABLE
// begin RemoveUnit ( ASD1 ) ;
3077: LD_EXP 21
3081: PPUSH
3082: CALL_OW 64
// end ;
3086: END
// every 0 0$0.1 trigger IsInArea ( ASD2 , WYJAZD ) do
3087: LD_EXP 22
3091: PPUSH
3092: LD_INT 5
3094: PPUSH
3095: CALL_OW 308
3099: IFFALSE 3113
3101: GO 3103
3103: DISABLE
// begin RemoveUnit ( ASD2 ) ;
3104: LD_EXP 22
3108: PPUSH
3109: CALL_OW 64
// end ;
3113: END
// every 0 0$0.1 trigger IsInArea ( ASD3 , WYJAZD ) do
3114: LD_EXP 23
3118: PPUSH
3119: LD_INT 5
3121: PPUSH
3122: CALL_OW 308
3126: IFFALSE 3140
3128: GO 3130
3130: DISABLE
// begin RemoveUnit ( ASD3 ) ;
3131: LD_EXP 23
3135: PPUSH
3136: CALL_OW 64
// end ; end_of_file
3140: END
// export ASD4 , ASD5 , ASD6 , ASD7 , ASD8 , ASD9 ; export function wsparcie3 ; begin
3141: LD_INT 0
3143: PPUSH
// ; vc_chassis = 2 ;
3144: LD_ADDR_OWVAR 37
3148: PUSH
3149: LD_INT 2
3151: ST_TO_ADDR
// vc_engine = engine_combustion ;
3152: LD_ADDR_OWVAR 39
3156: PUSH
3157: LD_INT 1
3159: ST_TO_ADDR
// vc_control = control_Computer ;
3160: LD_ADDR_OWVAR 38
3164: PUSH
3165: LD_INT 3
3167: ST_TO_ADDR
// vc_weapon = 12 ;
3168: LD_ADDR_OWVAR 40
3172: PUSH
3173: LD_INT 12
3175: ST_TO_ADDR
// uc_side = 1 ;
3176: LD_ADDR_OWVAR 20
3180: PUSH
3181: LD_INT 1
3183: ST_TO_ADDR
// uc_nation = 1 ;
3184: LD_ADDR_OWVAR 21
3188: PUSH
3189: LD_INT 1
3191: ST_TO_ADDR
// ASD4 = CreateVehicle ;
3192: LD_ADDR_EXP 24
3196: PUSH
3197: CALL_OW 45
3201: ST_TO_ADDR
// ASD5 = CreateVehicle ;
3202: LD_ADDR_EXP 25
3206: PUSH
3207: CALL_OW 45
3211: ST_TO_ADDR
// ASD6 = CreateVehicle ;
3212: LD_ADDR_EXP 26
3216: PUSH
3217: CALL_OW 45
3221: ST_TO_ADDR
// ASD7 = CreateVehicle ;
3222: LD_ADDR_EXP 27
3226: PUSH
3227: CALL_OW 45
3231: ST_TO_ADDR
// ASD8 = CreateVehicle ;
3232: LD_ADDR_EXP 28
3236: PUSH
3237: CALL_OW 45
3241: ST_TO_ADDR
// ASD9 = CreateVehicle ;
3242: LD_ADDR_EXP 29
3246: PUSH
3247: CALL_OW 45
3251: ST_TO_ADDR
// setcargo ( ASD4 , mat_cans , 100 ) ;
3252: LD_EXP 24
3256: PPUSH
3257: LD_INT 1
3259: PPUSH
3260: LD_INT 100
3262: PPUSH
3263: CALL_OW 290
// setcargo ( ASD5 , mat_cans , 100 ) ;
3267: LD_EXP 25
3271: PPUSH
3272: LD_INT 1
3274: PPUSH
3275: LD_INT 100
3277: PPUSH
3278: CALL_OW 290
// setcargo ( ASD6 , mat_cans , 100 ) ;
3282: LD_EXP 26
3286: PPUSH
3287: LD_INT 1
3289: PPUSH
3290: LD_INT 100
3292: PPUSH
3293: CALL_OW 290
// setcargo ( ASD7 , mat_oil , 100 ) ;
3297: LD_EXP 27
3301: PPUSH
3302: LD_INT 2
3304: PPUSH
3305: LD_INT 100
3307: PPUSH
3308: CALL_OW 290
// setcargo ( ASD8 , mat_oil , 100 ) ;
3312: LD_EXP 28
3316: PPUSH
3317: LD_INT 2
3319: PPUSH
3320: LD_INT 100
3322: PPUSH
3323: CALL_OW 290
// setcargo ( ASD9 , mat_oil , 100 ) ;
3327: LD_EXP 29
3331: PPUSH
3332: LD_INT 2
3334: PPUSH
3335: LD_INT 100
3337: PPUSH
3338: CALL_OW 290
// PlaceUnitArea ( ASD4 , WSPARCIE , false ) ;
3342: LD_EXP 24
3346: PPUSH
3347: LD_INT 3
3349: PPUSH
3350: LD_INT 0
3352: PPUSH
3353: CALL_OW 49
// wait ( 0 0$02 ) ;
3357: LD_INT 70
3359: PPUSH
3360: CALL_OW 67
// ComMoveToArea ( ASD4 , JAZDA ) ;
3364: LD_EXP 24
3368: PPUSH
3369: LD_INT 6
3371: PPUSH
3372: CALL_OW 113
// PlaceUnitArea ( ASD5 , WSPARCIE , false ) ;
3376: LD_EXP 25
3380: PPUSH
3381: LD_INT 3
3383: PPUSH
3384: LD_INT 0
3386: PPUSH
3387: CALL_OW 49
// ComMoveToArea ( ASD5 , JAZDA ) ;
3391: LD_EXP 25
3395: PPUSH
3396: LD_INT 6
3398: PPUSH
3399: CALL_OW 113
// wait ( 0 0$02 ) ;
3403: LD_INT 70
3405: PPUSH
3406: CALL_OW 67
// PlaceUnitArea ( ASD6 , WSPARCIE , false ) ;
3410: LD_EXP 26
3414: PPUSH
3415: LD_INT 3
3417: PPUSH
3418: LD_INT 0
3420: PPUSH
3421: CALL_OW 49
// ComMoveToArea ( ASD6 , JAZDA ) ;
3425: LD_EXP 26
3429: PPUSH
3430: LD_INT 6
3432: PPUSH
3433: CALL_OW 113
// wait ( 0 0$02 ) ;
3437: LD_INT 70
3439: PPUSH
3440: CALL_OW 67
// PlaceUnitArea ( ASD7 , WSPARCIE , false ) ;
3444: LD_EXP 27
3448: PPUSH
3449: LD_INT 3
3451: PPUSH
3452: LD_INT 0
3454: PPUSH
3455: CALL_OW 49
// ComMoveToArea ( ASD7 , JAZDA ) ;
3459: LD_EXP 27
3463: PPUSH
3464: LD_INT 6
3466: PPUSH
3467: CALL_OW 113
// wait ( 0 0$02 ) ;
3471: LD_INT 70
3473: PPUSH
3474: CALL_OW 67
// PlaceUnitArea ( ASD8 , WSPARCIE , false ) ;
3478: LD_EXP 28
3482: PPUSH
3483: LD_INT 3
3485: PPUSH
3486: LD_INT 0
3488: PPUSH
3489: CALL_OW 49
// ComMoveToArea ( ASD8 , JAZDA ) ;
3493: LD_EXP 28
3497: PPUSH
3498: LD_INT 6
3500: PPUSH
3501: CALL_OW 113
// wait ( 0 0$02 ) ;
3505: LD_INT 70
3507: PPUSH
3508: CALL_OW 67
// PlaceUnitArea ( ASD9 , WSPARCIE , false ) ;
3512: LD_EXP 29
3516: PPUSH
3517: LD_INT 3
3519: PPUSH
3520: LD_INT 0
3522: PPUSH
3523: CALL_OW 49
// ComMoveToArea ( ASD9 , JAZDA ) ;
3527: LD_EXP 29
3531: PPUSH
3532: LD_INT 6
3534: PPUSH
3535: CALL_OW 113
// wait ( 0 0$02 ) ;
3539: LD_INT 70
3541: PPUSH
3542: CALL_OW 67
// AddComMoveToArea ( ASD4 , WYJAZD ) ;
3546: LD_EXP 24
3550: PPUSH
3551: LD_INT 5
3553: PPUSH
3554: CALL_OW 173
// AddComMoveToArea ( ASD5 , WYJAZD ) ;
3558: LD_EXP 25
3562: PPUSH
3563: LD_INT 5
3565: PPUSH
3566: CALL_OW 173
// AddComMoveToArea ( ASD6 , WYJAZD ) ;
3570: LD_EXP 26
3574: PPUSH
3575: LD_INT 5
3577: PPUSH
3578: CALL_OW 173
// AddComMoveToArea ( ASD7 , WYJAZD ) ;
3582: LD_EXP 27
3586: PPUSH
3587: LD_INT 5
3589: PPUSH
3590: CALL_OW 173
// AddComMoveToArea ( ASD8 , WYJAZD ) ;
3594: LD_EXP 28
3598: PPUSH
3599: LD_INT 5
3601: PPUSH
3602: CALL_OW 173
// AddComMoveToArea ( ASD9 , WYJAZD ) ;
3606: LD_EXP 29
3610: PPUSH
3611: LD_INT 5
3613: PPUSH
3614: CALL_OW 173
// end ;
3618: LD_VAR 0 1
3622: RET
// every 0 0$0.1 trigger IsInArea ( ASD4 , WYJAZD ) do
3623: LD_EXP 24
3627: PPUSH
3628: LD_INT 5
3630: PPUSH
3631: CALL_OW 308
3635: IFFALSE 3649
3637: GO 3639
3639: DISABLE
// begin RemoveUnit ( ASD4 ) ;
3640: LD_EXP 24
3644: PPUSH
3645: CALL_OW 64
// end ;
3649: END
// every 0 0$0.1 trigger IsInArea ( ASD5 , WYJAZD ) do
3650: LD_EXP 25
3654: PPUSH
3655: LD_INT 5
3657: PPUSH
3658: CALL_OW 308
3662: IFFALSE 3676
3664: GO 3666
3666: DISABLE
// begin RemoveUnit ( ASD5 ) ;
3667: LD_EXP 25
3671: PPUSH
3672: CALL_OW 64
// end ;
3676: END
// every 0 0$0.1 trigger IsInArea ( ASD6 , WYJAZD ) do
3677: LD_EXP 26
3681: PPUSH
3682: LD_INT 5
3684: PPUSH
3685: CALL_OW 308
3689: IFFALSE 3703
3691: GO 3693
3693: DISABLE
// begin RemoveUnit ( ASD6 ) ;
3694: LD_EXP 26
3698: PPUSH
3699: CALL_OW 64
// end ;
3703: END
// every 0 0$0.1 trigger IsInArea ( ASD7 , WYJAZD ) do
3704: LD_EXP 27
3708: PPUSH
3709: LD_INT 5
3711: PPUSH
3712: CALL_OW 308
3716: IFFALSE 3730
3718: GO 3720
3720: DISABLE
// begin RemoveUnit ( ASD7 ) ;
3721: LD_EXP 27
3725: PPUSH
3726: CALL_OW 64
// end ;
3730: END
// every 0 0$0.1 trigger IsInArea ( ASD8 , WYJAZD ) do
3731: LD_EXP 28
3735: PPUSH
3736: LD_INT 5
3738: PPUSH
3739: CALL_OW 308
3743: IFFALSE 3757
3745: GO 3747
3747: DISABLE
// begin RemoveUnit ( ASD8 ) ;
3748: LD_EXP 28
3752: PPUSH
3753: CALL_OW 64
// end ;
3757: END
// every 0 0$0.1 trigger IsInArea ( ASD9 , WYJAZD ) do
3758: LD_EXP 29
3762: PPUSH
3763: LD_INT 5
3765: PPUSH
3766: CALL_OW 308
3770: IFFALSE 3784
3772: GO 3774
3774: DISABLE
// begin RemoveUnit ( ASD9 ) ;
3775: LD_EXP 29
3779: PPUSH
3780: CALL_OW 64
// end ; end_of_file
3784: END
// export CZASc , czas ; every 0 0$01 trigger CZASC = true do
3785: LD_EXP 30
3789: PUSH
3790: LD_INT 1
3792: EQUAL
3793: IFFALSE 3816
3795: GO 3797
3797: DISABLE
// begin Display_Strings := [ #Am05-1 , CZAS ] ;
3798: LD_ADDR_OWVAR 47
3802: PUSH
3803: LD_STRING #Am05-1
3805: PUSH
3806: LD_EXP 31
3810: PUSH
3811: EMPTY
3812: LIST
3813: LIST
3814: ST_TO_ADDR
// enable ;
3815: ENABLE
// end ;
3816: END
// every 0 0$01 trigger CzasC = true do
3817: LD_EXP 30
3821: PUSH
3822: LD_INT 1
3824: EQUAL
3825: IFFALSE 3845
3827: GO 3829
3829: DISABLE
// begin Czas = Czas - 0 0$01 ;
3830: LD_ADDR_EXP 31
3834: PUSH
3835: LD_EXP 31
3839: PUSH
3840: LD_INT 35
3842: MINUS
3843: ST_TO_ADDR
// enable ;
3844: ENABLE
// end ; end_of_file
3845: END
// export ASD10 , ASD11 , ASD12 , ASD13 , ASD14 , ASD15 ; export function wsparcie4 ; begin
3846: LD_INT 0
3848: PPUSH
// ; vc_chassis = 2 ;
3849: LD_ADDR_OWVAR 37
3853: PUSH
3854: LD_INT 2
3856: ST_TO_ADDR
// vc_engine = engine_combustion ;
3857: LD_ADDR_OWVAR 39
3861: PUSH
3862: LD_INT 1
3864: ST_TO_ADDR
// vc_control = control_Computer ;
3865: LD_ADDR_OWVAR 38
3869: PUSH
3870: LD_INT 3
3872: ST_TO_ADDR
// vc_weapon = 12 ;
3873: LD_ADDR_OWVAR 40
3877: PUSH
3878: LD_INT 12
3880: ST_TO_ADDR
// uc_side = 1 ;
3881: LD_ADDR_OWVAR 20
3885: PUSH
3886: LD_INT 1
3888: ST_TO_ADDR
// uc_nation = 1 ;
3889: LD_ADDR_OWVAR 21
3893: PUSH
3894: LD_INT 1
3896: ST_TO_ADDR
// ASD10 = CreateVehicle ;
3897: LD_ADDR_EXP 32
3901: PUSH
3902: CALL_OW 45
3906: ST_TO_ADDR
// ASD11 = CreateVehicle ;
3907: LD_ADDR_EXP 33
3911: PUSH
3912: CALL_OW 45
3916: ST_TO_ADDR
// ASD12 = CreateVehicle ;
3917: LD_ADDR_EXP 34
3921: PUSH
3922: CALL_OW 45
3926: ST_TO_ADDR
// ASD13 = CreateVehicle ;
3927: LD_ADDR_EXP 35
3931: PUSH
3932: CALL_OW 45
3936: ST_TO_ADDR
// ASD14 = CreateVehicle ;
3937: LD_ADDR_EXP 36
3941: PUSH
3942: CALL_OW 45
3946: ST_TO_ADDR
// ASD15 = CreateVehicle ;
3947: LD_ADDR_EXP 37
3951: PUSH
3952: CALL_OW 45
3956: ST_TO_ADDR
// setcargo ( ASD10 , mat_cans , 100 ) ;
3957: LD_EXP 32
3961: PPUSH
3962: LD_INT 1
3964: PPUSH
3965: LD_INT 100
3967: PPUSH
3968: CALL_OW 290
// setcargo ( ASD11 , mat_cans , 100 ) ;
3972: LD_EXP 33
3976: PPUSH
3977: LD_INT 1
3979: PPUSH
3980: LD_INT 100
3982: PPUSH
3983: CALL_OW 290
// setcargo ( ASD12 , mat_cans , 100 ) ;
3987: LD_EXP 34
3991: PPUSH
3992: LD_INT 1
3994: PPUSH
3995: LD_INT 100
3997: PPUSH
3998: CALL_OW 290
// setcargo ( ASD13 , mat_oil , 100 ) ;
4002: LD_EXP 35
4006: PPUSH
4007: LD_INT 2
4009: PPUSH
4010: LD_INT 100
4012: PPUSH
4013: CALL_OW 290
// setcargo ( ASD14 , mat_oil , 100 ) ;
4017: LD_EXP 36
4021: PPUSH
4022: LD_INT 2
4024: PPUSH
4025: LD_INT 100
4027: PPUSH
4028: CALL_OW 290
// setcargo ( ASD15 , mat_oil , 100 ) ;
4032: LD_EXP 37
4036: PPUSH
4037: LD_INT 2
4039: PPUSH
4040: LD_INT 100
4042: PPUSH
4043: CALL_OW 290
// PlaceUnitArea ( ASD10 , WSPARCIE , false ) ;
4047: LD_EXP 32
4051: PPUSH
4052: LD_INT 3
4054: PPUSH
4055: LD_INT 0
4057: PPUSH
4058: CALL_OW 49
// wait ( 0 0$02 ) ;
4062: LD_INT 70
4064: PPUSH
4065: CALL_OW 67
// ComMoveToArea ( ASD10 , JAZDA ) ;
4069: LD_EXP 32
4073: PPUSH
4074: LD_INT 6
4076: PPUSH
4077: CALL_OW 113
// PlaceUnitArea ( ASD11 , WSPARCIE , false ) ;
4081: LD_EXP 33
4085: PPUSH
4086: LD_INT 3
4088: PPUSH
4089: LD_INT 0
4091: PPUSH
4092: CALL_OW 49
// ComMoveToArea ( ASD11 , JAZDA ) ;
4096: LD_EXP 33
4100: PPUSH
4101: LD_INT 6
4103: PPUSH
4104: CALL_OW 113
// wait ( 0 0$02 ) ;
4108: LD_INT 70
4110: PPUSH
4111: CALL_OW 67
// PlaceUnitArea ( ASD12 , WSPARCIE , false ) ;
4115: LD_EXP 34
4119: PPUSH
4120: LD_INT 3
4122: PPUSH
4123: LD_INT 0
4125: PPUSH
4126: CALL_OW 49
// ComMoveToArea ( ASD12 , JAZDA ) ;
4130: LD_EXP 34
4134: PPUSH
4135: LD_INT 6
4137: PPUSH
4138: CALL_OW 113
// wait ( 0 0$02 ) ;
4142: LD_INT 70
4144: PPUSH
4145: CALL_OW 67
// PlaceUnitArea ( ASD13 , WSPARCIE , false ) ;
4149: LD_EXP 35
4153: PPUSH
4154: LD_INT 3
4156: PPUSH
4157: LD_INT 0
4159: PPUSH
4160: CALL_OW 49
// ComMoveToArea ( ASD13 , JAZDA ) ;
4164: LD_EXP 35
4168: PPUSH
4169: LD_INT 6
4171: PPUSH
4172: CALL_OW 113
// wait ( 0 0$02 ) ;
4176: LD_INT 70
4178: PPUSH
4179: CALL_OW 67
// PlaceUnitArea ( ASD14 , WSPARCIE , false ) ;
4183: LD_EXP 36
4187: PPUSH
4188: LD_INT 3
4190: PPUSH
4191: LD_INT 0
4193: PPUSH
4194: CALL_OW 49
// ComMoveToArea ( ASD14 , JAZDA ) ;
4198: LD_EXP 36
4202: PPUSH
4203: LD_INT 6
4205: PPUSH
4206: CALL_OW 113
// wait ( 0 0$02 ) ;
4210: LD_INT 70
4212: PPUSH
4213: CALL_OW 67
// PlaceUnitArea ( ASD15 , WSPARCIE , false ) ;
4217: LD_EXP 37
4221: PPUSH
4222: LD_INT 3
4224: PPUSH
4225: LD_INT 0
4227: PPUSH
4228: CALL_OW 49
// ComMoveToArea ( ASD15 , JAZDA ) ;
4232: LD_EXP 37
4236: PPUSH
4237: LD_INT 6
4239: PPUSH
4240: CALL_OW 113
// wait ( 0 0$02 ) ;
4244: LD_INT 70
4246: PPUSH
4247: CALL_OW 67
// AddComMoveToArea ( ASD10 , WYJAZD ) ;
4251: LD_EXP 32
4255: PPUSH
4256: LD_INT 5
4258: PPUSH
4259: CALL_OW 173
// AddComMoveToArea ( ASD11 , WYJAZD ) ;
4263: LD_EXP 33
4267: PPUSH
4268: LD_INT 5
4270: PPUSH
4271: CALL_OW 173
// AddComMoveToArea ( ASD12 , WYJAZD ) ;
4275: LD_EXP 34
4279: PPUSH
4280: LD_INT 5
4282: PPUSH
4283: CALL_OW 173
// AddComMoveToArea ( ASD13 , WYJAZD ) ;
4287: LD_EXP 35
4291: PPUSH
4292: LD_INT 5
4294: PPUSH
4295: CALL_OW 173
// AddComMoveToArea ( ASD14 , WYJAZD ) ;
4299: LD_EXP 36
4303: PPUSH
4304: LD_INT 5
4306: PPUSH
4307: CALL_OW 173
// AddComMoveToArea ( ASD15 , WYJAZD ) ;
4311: LD_EXP 37
4315: PPUSH
4316: LD_INT 5
4318: PPUSH
4319: CALL_OW 173
// end ;
4323: LD_VAR 0 1
4327: RET
// every 0 0$0.1 trigger IsInArea ( ASD10 , WYJAZD ) do
4328: LD_EXP 32
4332: PPUSH
4333: LD_INT 5
4335: PPUSH
4336: CALL_OW 308
4340: IFFALSE 4354
4342: GO 4344
4344: DISABLE
// begin RemoveUnit ( ASD10 ) ;
4345: LD_EXP 32
4349: PPUSH
4350: CALL_OW 64
// end ;
4354: END
// every 0 0$0.1 trigger IsInArea ( ASD11 , WYJAZD ) do
4355: LD_EXP 33
4359: PPUSH
4360: LD_INT 5
4362: PPUSH
4363: CALL_OW 308
4367: IFFALSE 4381
4369: GO 4371
4371: DISABLE
// begin RemoveUnit ( ASD11 ) ;
4372: LD_EXP 33
4376: PPUSH
4377: CALL_OW 64
// end ;
4381: END
// every 0 0$0.1 trigger IsInArea ( ASD12 , WYJAZD ) do
4382: LD_EXP 34
4386: PPUSH
4387: LD_INT 5
4389: PPUSH
4390: CALL_OW 308
4394: IFFALSE 4408
4396: GO 4398
4398: DISABLE
// begin RemoveUnit ( ASD12 ) ;
4399: LD_EXP 34
4403: PPUSH
4404: CALL_OW 64
// end ;
4408: END
// every 0 0$0.1 trigger IsInArea ( ASD13 , WYJAZD ) do
4409: LD_EXP 35
4413: PPUSH
4414: LD_INT 5
4416: PPUSH
4417: CALL_OW 308
4421: IFFALSE 4435
4423: GO 4425
4425: DISABLE
// begin RemoveUnit ( ASD13 ) ;
4426: LD_EXP 35
4430: PPUSH
4431: CALL_OW 64
// end ;
4435: END
// every 0 0$0.1 trigger IsInArea ( ASD14 , WYJAZD ) do
4436: LD_EXP 36
4440: PPUSH
4441: LD_INT 5
4443: PPUSH
4444: CALL_OW 308
4448: IFFALSE 4462
4450: GO 4452
4452: DISABLE
// begin RemoveUnit ( ASD14 ) ;
4453: LD_EXP 36
4457: PPUSH
4458: CALL_OW 64
// end ;
4462: END
// every 0 0$0.1 trigger IsInArea ( ASD15 , WYJAZD ) do
4463: LD_EXP 37
4467: PPUSH
4468: LD_INT 5
4470: PPUSH
4471: CALL_OW 308
4475: IFFALSE 4489
4477: GO 4479
4479: DISABLE
// begin RemoveUnit ( ASD15 ) ;
4480: LD_EXP 37
4484: PPUSH
4485: CALL_OW 64
// end ; end_of_file
4489: END
// export function medale ; begin
4490: LD_INT 0
4492: PPUSH
// if FilterAllUnits ( [ [ f_side , 4 ] , [ f_type , unit_human ] ] ) > 8 then
4493: LD_INT 22
4495: PUSH
4496: LD_INT 4
4498: PUSH
4499: EMPTY
4500: LIST
4501: LIST
4502: PUSH
4503: LD_INT 21
4505: PUSH
4506: LD_INT 1
4508: PUSH
4509: EMPTY
4510: LIST
4511: LIST
4512: PUSH
4513: EMPTY
4514: LIST
4515: LIST
4516: PPUSH
4517: CALL_OW 69
4521: PUSH
4522: LD_INT 8
4524: GREATER
4525: IFFALSE 4539
// begin AddMedal ( med1 , 1 ) ;
4527: LD_STRING med1
4529: PPUSH
4530: LD_INT 1
4532: PPUSH
4533: CALL_OW 101
// end else
4537: GO 4550
// begin AddMedal ( med1 , - 1 ) ;
4539: LD_STRING med1
4541: PPUSH
4542: LD_INT 1
4544: NEG
4545: PPUSH
4546: CALL_OW 101
// end ; AddMedal ( med2 , 1 ) ;
4550: LD_STRING med2
4552: PPUSH
4553: LD_INT 1
4555: PPUSH
4556: CALL_OW 101
// AddMedal ( med3 , 1 ) ;
4560: LD_STRING med3
4562: PPUSH
4563: LD_INT 1
4565: PPUSH
4566: CALL_OW 101
// GiveMedals ( MAIN ) ;
4570: LD_STRING MAIN
4572: PPUSH
4573: CALL_OW 102
// end ; end_of_file
4577: LD_VAR 0 1
4581: RET
// every 0 0$1 do
4582: GO 4584
4584: DISABLE
// begin if Difficulty = 1 then
4585: LD_OWVAR 67
4589: PUSH
4590: LD_INT 1
4592: EQUAL
4593: IFFALSE 4634
// begin SetTech ( 57 , 2 , state_Researched ) ;
4595: LD_INT 57
4597: PPUSH
4598: LD_INT 2
4600: PPUSH
4601: LD_INT 2
4603: PPUSH
4604: CALL_OW 322
// SetTech ( 48 , 2 , state_Researched ) ;
4608: LD_INT 48
4610: PPUSH
4611: LD_INT 2
4613: PPUSH
4614: LD_INT 2
4616: PPUSH
4617: CALL_OW 322
// SetTech ( 51 , 2 , state_Researched ) ;
4621: LD_INT 51
4623: PPUSH
4624: LD_INT 2
4626: PPUSH
4627: LD_INT 2
4629: PPUSH
4630: CALL_OW 322
// end ; if Difficulty = 2 then
4634: LD_OWVAR 67
4638: PUSH
4639: LD_INT 2
4641: EQUAL
4642: IFFALSE 4722
// begin SetTech ( 57 , 2 , state_Researched ) ;
4644: LD_INT 57
4646: PPUSH
4647: LD_INT 2
4649: PPUSH
4650: LD_INT 2
4652: PPUSH
4653: CALL_OW 322
// SetTech ( 48 , 2 , state_Researched ) ;
4657: LD_INT 48
4659: PPUSH
4660: LD_INT 2
4662: PPUSH
4663: LD_INT 2
4665: PPUSH
4666: CALL_OW 322
// SetTech ( 51 , 2 , state_Researched ) ;
4670: LD_INT 51
4672: PPUSH
4673: LD_INT 2
4675: PPUSH
4676: LD_INT 2
4678: PPUSH
4679: CALL_OW 322
// SetTech ( 58 , 2 , state_Researched ) ;
4683: LD_INT 58
4685: PPUSH
4686: LD_INT 2
4688: PPUSH
4689: LD_INT 2
4691: PPUSH
4692: CALL_OW 322
// SetTech ( 49 , 2 , state_Researched ) ;
4696: LD_INT 49
4698: PPUSH
4699: LD_INT 2
4701: PPUSH
4702: LD_INT 2
4704: PPUSH
4705: CALL_OW 322
// SetTech ( 52 , 2 , state_Researched ) ;
4709: LD_INT 52
4711: PPUSH
4712: LD_INT 2
4714: PPUSH
4715: LD_INT 2
4717: PPUSH
4718: CALL_OW 322
// end ; if Difficulty = 3 then
4722: LD_OWVAR 67
4726: PUSH
4727: LD_INT 3
4729: EQUAL
4730: IFFALSE 4849
// begin SetTech ( 57 , 2 , state_Researched ) ;
4732: LD_INT 57
4734: PPUSH
4735: LD_INT 2
4737: PPUSH
4738: LD_INT 2
4740: PPUSH
4741: CALL_OW 322
// SetTech ( 48 , 2 , state_Researched ) ;
4745: LD_INT 48
4747: PPUSH
4748: LD_INT 2
4750: PPUSH
4751: LD_INT 2
4753: PPUSH
4754: CALL_OW 322
// SetTech ( 51 , 2 , state_Researched ) ;
4758: LD_INT 51
4760: PPUSH
4761: LD_INT 2
4763: PPUSH
4764: LD_INT 2
4766: PPUSH
4767: CALL_OW 322
// SetTech ( 58 , 2 , state_Researched ) ;
4771: LD_INT 58
4773: PPUSH
4774: LD_INT 2
4776: PPUSH
4777: LD_INT 2
4779: PPUSH
4780: CALL_OW 322
// SetTech ( 49 , 2 , state_Researched ) ;
4784: LD_INT 49
4786: PPUSH
4787: LD_INT 2
4789: PPUSH
4790: LD_INT 2
4792: PPUSH
4793: CALL_OW 322
// SetTech ( 52 , 2 , state_Researched ) ;
4797: LD_INT 52
4799: PPUSH
4800: LD_INT 2
4802: PPUSH
4803: LD_INT 2
4805: PPUSH
4806: CALL_OW 322
// SetTech ( 59 , 2 , state_Researched ) ;
4810: LD_INT 59
4812: PPUSH
4813: LD_INT 2
4815: PPUSH
4816: LD_INT 2
4818: PPUSH
4819: CALL_OW 322
// SetTech ( 50 , 2 , state_Researched ) ;
4823: LD_INT 50
4825: PPUSH
4826: LD_INT 2
4828: PPUSH
4829: LD_INT 2
4831: PPUSH
4832: CALL_OW 322
// SetTech ( 53 , 2 , state_Researched ) ;
4836: LD_INT 53
4838: PPUSH
4839: LD_INT 2
4841: PPUSH
4842: LD_INT 2
4844: PPUSH
4845: CALL_OW 322
// end ; end ; end_of_file
4849: END
// export mleko , mleko2 ; every 0 0$01 do var un ;
4850: GO 4852
4852: DISABLE
4853: LD_INT 0
4855: PPUSH
// begin enable ;
4856: ENABLE
// if FilterUnitsInArea ( LEWO , [ f_side , your_side ] ) > 0 then
4857: LD_INT 7
4859: PPUSH
4860: LD_INT 22
4862: PUSH
4863: LD_OWVAR 2
4867: PUSH
4868: EMPTY
4869: LIST
4870: LIST
4871: PPUSH
4872: CALL_OW 70
4876: PUSH
4877: LD_INT 0
4879: GREATER
4880: IFFALSE 4892
// they_left := true else
4882: LD_ADDR_EXP 41
4886: PUSH
4887: LD_INT 1
4889: ST_TO_ADDR
4890: GO 4900
// they_right := true ;
4892: LD_ADDR_EXP 40
4896: PUSH
4897: LD_INT 1
4899: ST_TO_ADDR
// end ;
4900: PPOPN 1
4902: END
// export they_right , they_left ; export function DEFNOW ; begin
4903: LD_INT 0
4905: PPUSH
// PrepareWhiteTowers ;
4906: CALL 5093 0 0
// they_right := true ;
4910: LD_ADDR_EXP 40
4914: PUSH
4915: LD_INT 1
4917: ST_TO_ADDR
// they_left := false ;
4918: LD_ADDR_EXP 41
4922: PUSH
4923: LD_INT 0
4925: ST_TO_ADDR
// end ;
4926: LD_VAR 0 1
4930: RET
// every 0 0$01 trigger they_left = true do var un ;
4931: LD_EXP 41
4935: PUSH
4936: LD_INT 1
4938: EQUAL
4939: IFFALSE 5003
4941: GO 4943
4943: DISABLE
4944: LD_INT 0
4946: PPUSH
// begin enable ;
4947: ENABLE
// for un in guards do
4948: LD_ADDR_VAR 0 1
4952: PUSH
4953: LD_EXP 42
4957: PUSH
4958: FOR_IN
4959: IFFALSE 4993
// begin ComExitBuilding ( un ) ;
4961: LD_VAR 0 1
4965: PPUSH
4966: CALL_OW 122
// AddComMoveToArea ( un , GO ) ;
4970: LD_VAR 0 1
4974: PPUSH
4975: LD_INT 9
4977: PPUSH
4978: CALL_OW 173
// AddComHold ( un ) ;
4982: LD_VAR 0 1
4986: PPUSH
4987: CALL_OW 200
// end ;
4991: GO 4958
4993: POP
4994: POP
// they_left := false ;
4995: LD_ADDR_EXP 41
4999: PUSH
5000: LD_INT 0
5002: ST_TO_ADDR
// end ;
5003: PPOPN 1
5005: END
// every 0 0$01 trigger they_right = true and they_left = false do var un , i ;
5006: LD_EXP 40
5010: PUSH
5011: LD_INT 1
5013: EQUAL
5014: PUSH
5015: LD_EXP 41
5019: PUSH
5020: LD_INT 0
5022: EQUAL
5023: AND
5024: IFFALSE 5090
5026: GO 5028
5028: DISABLE
5029: LD_INT 0
5031: PPUSH
5032: PPUSH
// begin enable ;
5033: ENABLE
// for i = 1 to guards do
5034: LD_ADDR_VAR 0 2
5038: PUSH
5039: DOUBLE
5040: LD_INT 1
5042: DEC
5043: ST_TO_ADDR
5044: LD_EXP 42
5048: PUSH
5049: FOR_TO
5050: IFFALSE 5080
// begin ComEnterUnit ( guards [ i ] , east_bun [ i ] ) ;
5052: LD_EXP 42
5056: PUSH
5057: LD_VAR 0 2
5061: ARRAY
5062: PPUSH
5063: LD_EXP 43
5067: PUSH
5068: LD_VAR 0 2
5072: ARRAY
5073: PPUSH
5074: CALL_OW 120
// end ;
5078: GO 5049
5080: POP
5081: POP
// they_right := false ;
5082: LD_ADDR_EXP 40
5086: PUSH
5087: LD_INT 0
5089: ST_TO_ADDR
// end ;
5090: PPOPN 2
5092: END
// export guards , east_bun ; export function PrepareWhiteTowers ; var un , i ; begin
5093: LD_INT 0
5095: PPUSH
5096: PPUSH
5097: PPUSH
// guards := [ ] ;
5098: LD_ADDR_EXP 42
5102: PUSH
5103: EMPTY
5104: ST_TO_ADDR
// east_bun := FilterAllUnits ( [ [ f_side , 8 ] , [ f_btype , b_bunker ] ] ) ;
5105: LD_ADDR_EXP 43
5109: PUSH
5110: LD_INT 22
5112: PUSH
5113: LD_INT 8
5115: PUSH
5116: EMPTY
5117: LIST
5118: LIST
5119: PUSH
5120: LD_INT 30
5122: PUSH
5123: LD_INT 32
5125: PUSH
5126: EMPTY
5127: LIST
5128: LIST
5129: PUSH
5130: EMPTY
5131: LIST
5132: LIST
5133: PPUSH
5134: CALL_OW 69
5138: ST_TO_ADDR
// for i in east_bun do
5139: LD_ADDR_VAR 0 3
5143: PUSH
5144: LD_EXP 43
5148: PUSH
5149: FOR_IN
5150: IFFALSE 5303
// begin if IsInUnit ( i ) = 0 then
5152: LD_VAR 0 3
5156: PPUSH
5157: CALL_OW 310
5161: PUSH
5162: LD_INT 0
5164: EQUAL
5165: IFFALSE 5301
// begin uc_side = 8 ;
5167: LD_ADDR_OWVAR 20
5171: PUSH
5172: LD_INT 8
5174: ST_TO_ADDR
// hc_attr = [ Rand ( 9 , 11 ) , Rand ( 10 , 12 ) ] ;
5175: LD_ADDR_OWVAR 29
5179: PUSH
5180: LD_INT 9
5182: PPUSH
5183: LD_INT 11
5185: PPUSH
5186: CALL_OW 12
5190: PUSH
5191: LD_INT 10
5193: PPUSH
5194: LD_INT 12
5196: PPUSH
5197: CALL_OW 12
5201: PUSH
5202: EMPTY
5203: LIST
5204: LIST
5205: ST_TO_ADDR
// hc_skills = [ Rand ( 6 , 9 ) , 0 , 0 , 0 ] ;
5206: LD_ADDR_OWVAR 31
5210: PUSH
5211: LD_INT 6
5213: PPUSH
5214: LD_INT 9
5216: PPUSH
5217: CALL_OW 12
5221: PUSH
5222: LD_INT 0
5224: PUSH
5225: LD_INT 0
5227: PUSH
5228: LD_INT 0
5230: PUSH
5231: EMPTY
5232: LIST
5233: LIST
5234: LIST
5235: LIST
5236: ST_TO_ADDR
// hc_sex = Rand ( sex_male , sex_female ) ;
5237: LD_ADDR_OWVAR 27
5241: PUSH
5242: LD_INT 1
5244: PPUSH
5245: LD_INT 2
5247: PPUSH
5248: CALL_OW 12
5252: ST_TO_ADDR
// hc_class = 1 ;
5253: LD_ADDR_OWVAR 28
5257: PUSH
5258: LD_INT 1
5260: ST_TO_ADDR
// un := CreateHuman ;
5261: LD_ADDR_VAR 0 2
5265: PUSH
5266: CALL_OW 44
5270: ST_TO_ADDR
// guards = guards ^ un ;
5271: LD_ADDR_EXP 42
5275: PUSH
5276: LD_EXP 42
5280: PUSH
5281: LD_VAR 0 2
5285: ADD
5286: ST_TO_ADDR
// PlaceHumanInUnit ( un , i ) ;
5287: LD_VAR 0 2
5291: PPUSH
5292: LD_VAR 0 3
5296: PPUSH
5297: CALL_OW 52
// end ; end ;
5301: GO 5149
5303: POP
5304: POP
// SetSide ( FilterAllUnits ( [ f_side , 8 ] ) , 3 ) ;
5305: LD_INT 22
5307: PUSH
5308: LD_INT 8
5310: PUSH
5311: EMPTY
5312: LIST
5313: LIST
5314: PPUSH
5315: CALL_OW 69
5319: PPUSH
5320: LD_INT 3
5322: PPUSH
5323: CALL_OW 235
// end ;
5327: LD_VAR 0 1
5331: RET
